home *** CD-ROM | disk | FTP | other *** search
- TurboList v0.06 alpha (5-Apr-95)
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- by Conrad Sanderson (email: g.sanderson@ais.gu.edu.au)
- Mail me with bug reports or suggestions...
-
-
- TABLE OF CONTENTS
- ~~~~~~~~~~~~~~~~~
- What is this thing?
- What else does it do?
- Why is it faster?
- It's still experimental
- OPTIONS
- ALIASING
- HISTORY
- TO DO
-
-
- What is this thing?
- ~~~~~~~~~~~~~~~~~~~
- TurboList is a command similar to the standard list command supplied
- with Workbench. It requires at least Kickstart 2.0 (v37.175).
-
- Instead of listing directories like this:
-
- muiv23test.LZX 116529 ----rwed Today 17:36:34
- ami2vga.iff 19288 ----rw-d Today 17:29:03
- ftphunt.gz 13768 ----rwed 04-Jan-95 14:27:41
- strputsize.c empty ----rw-d Saturday 23:57:09
- ultoa020.o 444 ----rwed 28-Mar-95 19:11:11
- ultoa020.c 331 ----rw-d 28-Mar-95 19:08:43
- desert.rat.toxic.article.gz 3684 ----rwed Today 17:24:34
- etherpeek 2369 ----rwed 04-Jan-95 22:21:34
- electric.bulle 1416 ----rwed 04-Jan-95 22:16:54
- 9 files - 168 blocks used
-
-
- it lists them like this:
-
- muiv23test.LZX 114K 17:36:34 ----rwed
- ami2vga.iff 19K 17:29:03 ----rw-d
- ftphunt.gz 13K 04-Jan-95 ----rwed
- strputsize.c 0b Saturday ----rw-d
- ultoa020.o 444b 28-Mar-95 ----rwed
- ultoa020.c 331b 28-Mar-95 ----rw-d
- desert.rat.toxic.article.gz 3.6K 17:24:34 ----rwed
- etherpeek 2.3K 04-Jan-95 ----rwed
- electric.bulle 1.4K 04-Jan-95 ----rwed
- TOTAL: 9 files [154K] and 0 dirs
- [168K used, 10.5M free]
-
- Explanation:
-
- K = 1024 bytes (1 Kilobyte)
- M = 1024K (1 Megabyte)
- G = 1024M (1 Gigabyte)
-
- hence, 116529 bytes = 116529/1024 = 113.79K, or approximately 114K.
-
- In the TOTAL: lines,
-
- [154K] is all of the file sizes added together.
-
- [168K used] represents the _actual_ amount of disk space used
- by the _listed_ files and directory entries.
- If some files/dirs are hidden, they are not taken
- into account.
-
- [10.5M free] is the amount of space free on the device
-
-
- NOTE: If any of the above values exceed 4 Gigabytes, strange/incorrect
- results will be printed... but not many people have 4 Gigabyte
- drives.
-
-
- What else does it do?
- ~~~~~~~~~~~~~~~~~~~~~
- - Can be upto 25% faster than normal list command
- - Long filenames fit without stuffing up the display
- - Approximates the file size so it can be read easily (can be turned off)
-
- - Displays the time of the files only if they were created today,
- otherwise it prints out the day or the date. This will be changed
- to use a format similar to UNIX in a later version
-
- - doesn't display hidden files (with the h bit) (can be turned off)
- - handles patterns (ie. stuff like foobar.#? etc)
-
-
- Why is it faster?
- ~~~~~~~~~~~~~~~~~
- - Turns off the cursor while printing (can be forced to remain on)
- - Direct writes (can be forced to use normal printing methods)
-
- - Caches 3 filenames before printing them (can be turned off)
- (note: caching filenames may not be desirable when using pattern
- matching on a slow drive... will be fixed later)
-
-
- It's still experimental
- ~~~~~~~~~~~~~~~~~~~~~~~
- - don't expect everything working perfectly
-
- - a lot of functions are missing when compared to the normal list command
- eg. recursive directories, listing according to dates (since/upto), etc...
-
-
- OPTIONS
- ~~~~~~~
- The letters after / specify the type of argument
-
- /M = multiple strings (keyword doesn't have to be present)
- /S = switch (ie. enable) (keyword has to be present)
-
- If a keyword (or its shortcut) has the same name as a directory/filename
- you are trying to list, you must use DIR=filename. Alternatively,
- you can use UNIX like keywords (see the "-unix" option).
-
-
- DIR/M,-h=-?=HELP=ABOUT/S,-sh=SH=SHOWHIDDEN/S,-co=CO=CURSORON/S,
- -nj=NJ=NOJUMP/S,-nd=ND=NODIRECT/S,-unix/S,-files=FILES/S,
- -dirs=DIRS/S,-noda=NODA=NODATES/S,-ex=EX=EXACT/S,-free=FREE/S
-
-
- DIR
-
- Name of a directory or a file or nothing (will list current dir).
- Currently tlist can only process one name (no multiple directories).
-
-
- ABOUT, HELP, -?, -h
-
- Print version/date information. In some versions this option may
- also display various debugging information.
-
- SHOWHIDDEN, SH, -sh
-
- Show hidden files/directories (h protection bit).
-
-
- CURSORON, CO, -co
-
- Keep the cursor on at all times. Tlist turns the cursor off while
- printing something. If you are using tlist over a comm link
- (eg. AUX:, parnet, sernet, etc.), your terminal may not be able
- to interpret cursor on/off commands, hence this option.
-
-
- NOJUMP, NJ, -nj
-
- Do not cache filenames - print out filnames as soon as they are read
- from the disk. This can be used if you have a slow drive and are
- listing patterns. Normally tlist caches 3 names before printing
- them.
-
-
- NODIRECT, ND, -nd
-
- Use normal printing methods instead of direct writes. Direct writes
- may conflict with some console-handlers (eg. KingCON with Jump Scroll
- enabled) or communication links (eg. AUX:, parnet, sernet, etc.)
-
-
- -unix
-
- Use options _only_ which start with "-". Useful when a option has the
- same name as a dir/file, or you prefer UNIX type keywords. Only works
- properly when it is specified as part of the command line.
-
- (note: even if you do not specify -unix, options starting with "-"
- still work. )
-
- example, to list a filename called "free":
- (FREE is a valid keyword in tlist)
-
- shell> tlist -unix free
- free 5.1K 18:26:44 ----rwed
-
-
- FILES, -files
-
- List only files
-
-
- DIRS, -dirs
-
- List only directories
-
-
- NODATES, NODA, -noda
-
- Do not print date/time of files/dirs.
-
-
- EXACT, EX, -ex
-
- Print out the exact size of files. Long filenames will stuffup
- the display.
-
-
- FREE, -free
-
- Display the amount of used and free space only
-
- example:
-
- shell> tlist free dh0:
- [7.1M used, 917K free]
-
- "dh0:" can be replaced with any filename/directory/device or even
- omitted. If it's omitted, tlist will use the current directory as the
- argument.
-
-
- ALIASING
- ~~~~~~~~
- You can alias tlist to have a default behaviour which you want.
- It has to be aliased for every shell window you open (can be part of
- s:shell-startup)
-
- Example1:
- shell> alias tlist tlist showhidden exact
-
- ... and whenever tlist is used, the showhidden and exact options
- will be on.
-
- Example2:
- shell> alias tlist tlist -unix
-
- ... and whenever tlist is used, only options which start with "-"
- will be used.
-
- In later versions, tlist will use environment variables so aliasing
- will not be necessary.
-
-
- HISTORY
- ~~~~~~~
- 0.01 tested the theory that print buffering and no cursor would
- speed up directory listing
-
- 0.02 added protection bits
- 0.03 replaced many occurences of mysprintf() with strcat()/strcpy()
- added filestats
-
- 0.04 added dates
- 0.05 implemented patterns (#?.sfsf#? etc)
-
- 0.06 major code update (read: optimized the crap out of it)
-
- - replaced many occurances of strcat()/strcpy() with
- mystrcpy()/mystrcat() which are much faster... tlist
- now accesses memory much less
-
- - replaced most occurances of mysprintf() (and hence RawDoFmt())
- with mystrcat()/mystrcpy()/mystrputchar()/ultoa()
-
- - due to above changes, tlist now is ~8% faster than last version
-
- added FREE keyword
-
- rearranged filestats(), added total size of files and total space
- used by files
-
- added CPU check for 68020+ version
- 68000 version uses utility.library for 32 bit maths
-
-
- TO DO
- ~~~~~
- show/don't show .info files (hidden by default, SHOWINFO)
- option for bytes (b) or nothing at the end of file size
- show files/dirs since/upto according to specified date
- show files/dirs bigger/smaller according to specified size
- multiple directories
- recursive directories
-